"""
File:02_telnetlib.py
Author:Tcyw
Date:2020-05-03
Connect:741047561@qq.com
Description:

"""
import re
import telnetlib

# # 实例化对象
# tn = telnetlib.Telnet(host='172.25.254.15', port=22)
# # read_until读取直到遇到了换行符或超时秒数。默认返回bytes类型，通过decode方法解码为字符串。
# result = tn.read_until(b'\n', timeout=5).decode('utf-8')
# # 通过正则匹配忽略大小写，寻找是否ssh服务开启
# searchObj = re.search('ssh', result, re.I)
# # 如果能匹配到内容， 说明ssh服务开启， 是Linux服务器.
# if searchObj:
#     print("ssh服务是开启的，且是Linux操作系统")
# else:
#     print('ssh服务未开启或者不是Linux服务器')


def is_ssh_up(host='172.25.254.15', port=22, timeout=5):
    # 实例化对象
    tn = telnetlib.Telnet(host='172.25.254.15', port=22)
    # read_until读取直到遇到了换行符或超时秒数。默认返回bytes类型，通过decode方法解码为字符串。
    result = tn.read_until(b'\n', timeout=5).decode('utf-8')
    # 通过正则匹配忽略大小写，寻找是否ssh服务开启
    searchObj = re.search('ssh', result, re.I)
    # 如果能匹配到内容， 说明ssh服务开启， 是Linux服务器.
    if searchObj:
        return True
    else:
        return False

if __name__ == '__main__':
    """
    active_hosts = get_active_hosts()
    for host in active_hosts:
        if is_ssh_up():
            pass
    """
    result = is_ssh_up()
    print(result)
